<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>

	<button onclick="getTime()">获取 服务器当前时间</button>
	
	<hr>
	<!-- yc 用户已经被注册 -->
	用户名：<input id="nameInput" onblur="checkname(this.value)"><br>
	密码：<input id="pwdInput"><br>
	<button onclick="reg()">注册</button>
	

</body>

<script type="text/javascript">
	function getTime() {
		get("getTime.s", function(text){
			// 正常接收到的结果
			alert(text);
		})
	}
	
	function checkname(name){
		get("checkName.s?name="+name, function(text){
			alert(text);
		})
	}
	
	function reg(){
		
		var url = "reg.s?name=" + nameInput.value + "&pwd=" + pwdInput.value;
		var callback = function(text){
			let result = JSON.parse(text);
			alert(result.msg);
			if(result.code==1){
				location.href = "login.html";
			}
		};
		
		get(url, callback);
		
	}
	
	// 封装ajax方法, callback是回调函数
	function get(url, callback) {
		// 创建  ajax 对象  XMLHTTPRequest
		var xmlhttp;
		// 解决浏览器兼容性问题
		try {
			xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
		} catch (e) {
			try {
				xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
			} catch (e) {
				try {
					xmlhttp = new XMLHttpRequest();
					if (xmlhttp.overrideMimeType) {
						xmlhttp.overrideMimeType("text/xml");
					}
				} catch (e) {
					// 不要压制异常
					console.info(e);
				}
			}
		}
		
		// 设置回调函数, 当浏览器发送状态改变时，触发的函数
		xmlhttp.onreadystatechange = function(){
			console.info(xmlhttp);
			console.info("浏览器发送状态：" + xmlhttp.readyState);
			if( xmlhttp.readyState == 4){
				// 接收到了服务器的响应结果
				console.info("服务器响应结果码：" + xmlhttp.status);
				if(xmlhttp.status == 200){
					// 自定义的回调函数， 传入响应结果
					callback(xmlhttp.responseText);
				}
			}
		}
		
		// 开启连接
		xmlhttp.open("get",url);
		// 发送请求
		xmlhttp.send();
	}
</script>
</html>